Dagger: A Tool to Generate Program Graphs
نویسنده
چکیده
Dagger is a tool that generates program graphs to selectively visualize a software structure. The design of dagger achieves a strong degree of language independence by exploiting the duality between a class of entity-relationship databases and attributed directed graphs. This paper describes the C and C++ versions of dagger, which map a selected subset of relationships stored in a program database to a graph speciication, decorate the graph with display attributes, and then pass it to layout tools or interactive graph browsers. Dagger takes output from database queries to generate a large variety of interesting program graphs, including header le hierarchy, module binding, and type inheritance graphs. This paper describes the graph generation process surrounding dagger and a sample of tools involved in the process. In particular, we describe how a closure operator works in tandem with dagger to control graph complexity by generating reachability graphs where sub-structures are selectively ignored or expanded. Our experience in applying dagger to several software projects has demonstrated its capability in abstracting and visualizing complex software structures without much overhead. All program graphs presented in this paper are tagged with timing statistics.
منابع مشابه
Dagger: Digging for Interesting Aggregates in RDF Graphs
RDF is the format of choice for representing Semantic Web data. RDF graphs may be large and their structure is heterogeneous and complex, making them very hard to explore and understand. To help users discover valuable insights from RDF graph, we have developed Dagger, a tool which automatically recommends interesting aggregation queries over the RDF graphs; Dagger evaluates the queries and gra...
متن کاملAn Integer Programming Model and a Tabu Search Algorithm to Generate α-labeling of Special Classes of Quadratic Graphs
First, an integer programming model is proposed to find an α-labeling for quadratic graphs. Then, a Tabu search algorithm is developed to solve large scale problems. The proposed approach can generate α-labeling for special classes of quadratic graphs, not previously reported in the literature. Then, the main theorem of the paper is presented. We show how a problem in graph theory c...
متن کاملGene recognition based on DAG shortest paths
We describe DAGGER, an ab initio gene recognition program which combines the output of high dimensional signal sensors in an intuitive gene model based on directed acyclic graphs. In the first stage, candidate start, donor, acceptor, and stop sites are scored using the SNoW learning architecture. These sites are then used to generate a directed acyclic graph in which each source-sink path repre...
متن کاملDAGGER: A Scalable Index for Reachability Queries in Large Dynamic Graphs
With the ubiquity of large-scale graph data in a variety of application domains, querying them effectively is a challenge. In particular, reachability queries are becoming increasingly important, especially for containment, subsumption, and connectivity checks. Whereas many methods have been proposed for static graph reachability, many real-world graphs are constantly evolving, which calls for ...
متن کاملDAGGER: A Toolkit for Automata on Directed Acyclic Graphs
This paper presents DAGGER, a toolkit for finite-state automata that operate on directed acyclic graphs (dags). The work is based on a model introduced by (Kamimura and Slutzki, 1981; Kamimura and Slutzki, 1982), with a few changes to make the automata more applicable to natural language processing. Available algorithms include membership checking in bottom-up dag acceptors, transduction of dag...
متن کامل